package com.xiahui.day10.Test1;

/**
 * 企鹅类
 * 属性： 名字 性别  健康值
 * 封装：属性私有  方法公开
 * 属性私有：将类中的属性都使用private修饰 表示此属性只能在本类中访问 其他类无法访问
 * 方法公开：针对每个属性都编写一对公开的方法 分别用于属性的赋值setter 和 取值getter
 * 方法书写格式：
 * 赋值的方法统一以set开头 加上属性名称 属性名首字母大写
 * 取值的方法统一以get开头 加上属性名称 属性名首字母大写
 * 高内聚： 本类中的属性和方法应该直接与本类对象，事物产生关联， 不应该间接关联 或者 没有关联
 * 低耦合：耦合度表示紧密连接程度 降低耦合度即表示 降低紧密连接程度  提高程序的可扩展性 灵活性
 */
public class Penguin {
    private String name;
    public void  setName(String name){
        this.name = name;
    }
    public String getName(){
        return name;
    }
    private char sex;
    public void setSex(char sex){
        if(sex == '雌' || sex == '雄'){
            this.sex = sex;
        }else{
            System.out.println("属性赋值不合理，将使用默认性别：雄");
            this.sex = '雄';
        }
    }
    public char getSex(){
        return sex;
    }
    private int health;
    public void setHealth(int health){
        if(health >= 0 && health <= 100){
            this.health = health;
        }else{
            System.out.println("属性赋值不合理，将使用默认健康值：60");
            this.health = 60;
        }
    }
    public int getHealth(){
        return health;
    }

}



